home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Languguage OS 2
/
Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO
/
language
/
embedded
/
mcu
/
macros05.arc
/
RAMSBR.INI
< prev
next >
Wrap
Text File
|
1990-05-16
|
4KB
|
110 lines
****************************************************************************
* ramsbr.ini 1.0
* -------------------------------------------------------------
* Module Name: RAMSBR - RAM Subroutine Initialization
* -------------------------------------------------------------
*
* Description:
* This file contains the initialization code for the RAM subroutine
* area needed to support the MACROS05.MAC file. It MUST be placed in
* the ROM data area and then copied to RAM for proper operation.
* Consult the MACROS05.MAC file for more details.
*
****************************************************************************
*
* Notes:
* 1. Motorola reserves the right to make changes to this file.
* Although this file has been carefully reviewed and is
* believed to be reliable, Motorola does not assume any
* liability arising out of its use. This code may be freely
* used and/or modified at no cost or obligation by the user.
* 2. The latest version of this file is maintained on the Motorola
* FREEWARE Bulletin Board, 512/891-FREE (512/891-3733). It operates
* continuously (except for maintenance) at 1200-2400 baud, 8 bits,
* no parity. Sample test files for PASM05 are also included.
* Download the archive file, MACROS05.ARC, to get all the files.
*
**************************************************************************
* REVISION HISTORY (add new changes to top):
*
* 05/16/90 P.S. Gilmour
* 1. Original entry generated from MACROS05.MAC version 1.0.
****************************************************************************
.RAMSBR$ EQU * Start of RAM based subroutines!
**************************************************************************
** The following RAM subroutines MUST BE INITIALIZED from ROM upon **
** startup (from 'RAMSBR$' for 'RAMSZ$' number of bytes). If changes **
** are to be made to the RAM subroutines, make them in the MACROS05.MAC**
** file and then copy the source here (ROM area) and insert a '.' in **
** front of all the labels (leading '.' will be used to denote ROM). **
**************************************************************************
*-- start of RAM subroutines --------------------------------------------*
**************************************************************************
* LDAXREG = load A via XREG subr.
*
* Register Usage:
* CC = reflects value loaded.
* All other registers preserved.
*
* NOTE:
* 1. Instruction modified code here must be located in RAM!
*
.LDAXREG EQU *
LDA 0-0+$FFFF
.XREG1$ EQU *-2 Pseudo XREG #1
RTS
**************************************************************************
* STA$X = store A via XREG subr.
*
* Register Usage:
* CC = reflects value stored.
* All other registers preserved.
*
* NOTE:
* 1. Instruction modified code here must be located in RAM!
*
.STA$X EQU *
STA 0-0+$FFFF
.XREG2$ EQU *-2 Pseudo XREG #2
RTS
**************************************************************************
* LDAYREG = load A via YREG subr.
*
* Register Usage:
* CC = reflects value loaded.
* All other registers preserved.
*
* NOTE:
* 1. Instruction modified code here must be located in RAM!
*
.LDAYREG EQU *
LDA 0-0+$FFFF
.YREG1$ EQU *-2 Pseudo YREG #1
RTS
**************************************************************************
* STA$Y = store A via YREG subr.
*
* Register Usage:
* CC = reflects value stored.
* All other registers preserved.
*
* NOTE:
* 1. Instruction modified code here must be located in RAM!
*
.STA$Y EQU *
STA 0-0+$FFFF
.YREG2$ EQU *-2 Pseudo YREG #2
RTS
*-- end of RAM subroutines ----------------------------------------------*
.RAMSZ$ EQU *-.RAMSBR$ Size of ram subroutines (in bytes).
IFNE RAMSZ$-.RAMSZ$
FAIL Size mismatch between RAM/ROM subroutine areas!
ENDC